Various devices such as electronic devices, computing systems, portable devices, and handheld devices have collaborative applications such as software gaming applications. These devices can network with each other for a multi-player gaming experience.
One prior gaming environment allows players to interact with each other online. A server communicates over a data network with a number of client computers. The server receives information from the client computers to update the state of the multi-player game and distributes information back to the client computers regarding relevant game state for each of the client computers.
However, this prior approach has limitations in terms of connecting players and network delays. These online connections use the transmission control protocol (TCP) that provides reliable, ordered delivery of a stream of bytes from a game application on the client computer to the server and vice versa. The TCP controls segment size, flow control, the rate at which data is exchanged, and network traffic congestion. However, TCP packets may have timing, readiness, and internet issues that cause some client computers to not have relevant game information in a timely manner or at all.